package com.ht.demo.dao.dao.monitor;

import java.util.List;
import com.ht.demo.common.pojo.qto.monitor.LoginInfoQTO;
import com.ht.demo.dao.domain.monitor.LoginInfoDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 系统登录日志，登录记录
 * Dao接口
 * @author hdengxian
 * @date 2023-07-31
 */
@Mapper
public interface LoginInfoDao {

    /**
     *
     * 系统登录日志，登录记录
     * 新增
     * @param record 系统登录日志，登录记录
     * @return 结果
     */
    int insert(LoginInfoDO record);

    /**
     * 删除
     * 系统登录日志，登录记录
     * @param id
     * @return 结果
     */
    int deleteById(Long id);

    int deleteByIds(Long[] ids);
    /**
     * 修改
     * 系统登录日志，登录记录
     * @param record
     * @return 结果
     */
    int updateById(LoginInfoDO record);

    /**
     * 主键查询
     * 系统登录日志，登录记录
     * @param id
     * @return 结果
     */
     LoginInfoDO findById(Long id);

   /**
    * 使用主键集合查询
    * 系统登录日志，登录记录
    * @param idList
    * @return
    */
    List<LoginInfoDO> findLoginInfoByIds(@Param("dataList") List<Long> idList);
    /**
     * 多条件查询
     * 系统登录日志，登录记录
     * @param record
     * @return 结果
     */
    List<LoginInfoDO> findByCondition(LoginInfoDO record);

    /**
     * 统计
     * 系统登录日志，登录记录
     * @param qto
     * @return 结果
     */
    Integer findForPageCount(LoginInfoQTO qto);

    /**
     * 分页查询
     * 系统登录日志，登录记录
     * @param qto
     * @return 结果
     */
    List<LoginInfoDO> findForPage(LoginInfoQTO qto);

    Integer deleteAll();
}